package com.siwei.apply.mapper;

import com.siwei.apply.domain.Gyjsydscdj;
import com.siwei.apply.domain.vo.GyjsydscdjUpdateVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;

// 国有建设用地使用权首次登记 Mapper 接口
@Mapper
public interface GyjsydscdjMapper {
    /**
     * 根据项目id查询是否存在
     */
    Boolean isExit(String projectId);

    /**
     * 添加国有建设用地使用权首次登记信息
     *
     * @param gyjsydscdj
     */
    void add(Gyjsydscdj gyjsydscdj);

    /**
     * 获取国有建设用地使用权首次登记信息列表（按项目ID）
     */
    List<Gyjsydscdj> get(String projectId);

    /**
     * 获取国有建设用地使用权首次登记信息（按主键ID）
     */
    Gyjsydscdj getById(@Param("id") String id);

    /**
     * 更新国有建设用地使用权首次登记信息
     *
     * @param gyjsydscdjUpdateVo
     */
    void update(GyjsydscdjUpdateVo gyjsydscdjUpdateVo);

    /**
     * 更新国有建设用地使用权首次登记的上链状态
     * @param id 主键ID
     * @param hasOnchain 是否上链
     */
    void updateHasOnchain(@Param("id") String id, @Param("hasOnchain") Boolean hasOnchain);
}
